/**
 * 
 */
package org.gov.vis.data.controller;

import java.util.HashMap;
import java.util.List;

import org.gov.vis.data.dto.DistributionLnDto;
import org.gov.vis.master.controller.BaseCtlr;

/**
 * @author Vishwanath
 *
 */
public interface DistributionLnCtlr extends BaseCtlr{

	/**
	 * This holds the error messages of the service layer.
	 */
	HashMap<String, String> errorMsgs = new HashMap<String, String>();

	/**
	 * Method called to Add or Edit the DistributionLN
	 * @param _disLnDto
	 * @throws Exception
	 */
	public void addOrEditDisLN(final DistributionLnDto _disLnDto) throws Exception;
	
	/**
	 * Method called to delete the DisLN Object based on the passed prLn Id
	 * @param _disLnId
	 * @throws Exception
	 */
	public void deleteDisLN(long _disLnId) throws Exception;
	
	/**
	 * Method called to get the DisLN based on the passed DisLNDto Object
	 * @param _disLnDto
	 * @return
	 * @throws Exception
	 */
	public DistributionLnDto getDisLN(final DistributionLnDto _disLnDto) throws Exception;
	
	/**
	 * Method called to get the list of DistributionLN based on the passed DisLNDto Object
	 * @param _disLnDto
	 * @return
	 * @throws Exception
	 */
	public List<DistributionLnDto> getDisLNs(final DistributionLnDto _disLnDto) throws Exception;
	
	/**
	 * Method called to search for the DisLNs based on the passed DisLN Object
	 * @param _disLnDto
	 * @return
	 * @throws Exception
	 */
	public List<DistributionLnDto> searchDisLNs(final DistributionLnDto _disLnDto) throws Exception; 
	
	/**
	 * Method called to get the DisLN based on the passed primary key Id
	 * @param _disLnId
	 * @return
	 * @throws Exception
	 */
	public DistributionLnDto getDisLN(final long _disLnId) throws Exception;
	
		
	/**
	 * Method called to get the DisLN based on the passed vehicle no
	 * @param _disLnVhclNo
	 * @return
	 * @throws Exception
	 */
	public DistributionLnDto getDisLNOnVehcleNo(final String _disLnVhclNo) throws Exception;
	
	/**
	 * Method called to get the DisLN based on the passed FromStation
	 * @param _disLnFrmStat
	 * @return
	 * @throws Exception
	 */
	public DistributionLnDto getDisLNOnFrmStat(final String _disLnFrmStat) throws Exception;
	
	
	/**
	 * Mathod Called to get the DisLn based on the passed code
	 *  @param _disLnCode
	 * @return
	 * @throws Exception	
	 */    
    public DistributionLnDto getDisLnOnCode(final String _disLnCode) throws Exception;


}//end DistributionLnCtlr
